VAR_BASE equ                           0x4000
                                       
TEMP_VAR_BASE equ                      (VAR_BASE)
VAR_TEMP_x4000 equ                     0x4000
VAR_TEMP_x4001 equ                     0x4001
VAR_TEMP_x4002 equ                     0x4002
VAR_TEMP_x4003 equ                     0x4003
VAR_TEMP_x4004 equ                     0x4004
VAR_TEMP_x4005 equ                     0x4005
VAR_TEMP_x4006 equ                     0x4006
VAR_TEMP_x4007 equ                     0x4007
VAR_TEMP_x4008 equ                     0x4008
VAR_TEMP_x4009 equ                     0x4009
VAR_TEMP_x400A equ                     0x400A
VAR_TEMP_x400B equ                     0x400B
VAR_TEMP_x400C equ                     0x400C
VAR_TEMP_x400D equ                     0x400D
VAR_TEMP_x400E equ                     0x400E
VAR_TEMP_x400F equ                     0x400F
VAR_TEMP_x4010 equ                     0x4010
VAR_TEMP_x4011 equ                     0x4011
VAR_TEMP_x4012 equ                     0x4012
VAR_BATTLE_RESULT equ                  0x4013
VAR_TEMP_x4014 equ                     0x4014
VAR_TEMP_x4015 equ                     0x4015
VAR_TEMP_x4016 equ                     0x4016
VAR_TEMP_x4017 equ                     0x4017
VAR_TEMP_x4018 equ                     0x4018
VAR_TEMP_x4019 equ                     0x4019
VAR_TEMP_x401A equ                     0x401A
VAR_TEMP_x401B equ                     0x401B
VAR_TEMP_x401C equ                     0x401C
VAR_TEMP_x401D equ                     0x401D
VAR_TEMP_x401E equ                     0x401E
VAR_TEMP_x401F equ                     0x401F
                                       
NUM_TEMP_VARS equ                      32

VAR_OBJ_GFX_BASE equ                   (TEMP_VAR_BASE + NUM_TEMP_VARS)

VAR_OBJ_0 equ                          0x4020
VAR_OBJ_1 equ                          0x4021
VAR_OBJ_2 equ                          0x4022
VAR_OBJ_3 equ                          0x4023
VAR_OBJ_4 equ                          0x4024
VAR_OBJ_5 equ                          0x4025
VAR_OBJ_6 equ                          0x4026
VAR_OBJ_7 equ                          0x4027
VAR_OBJ_8 equ                          0x4028
VAR_OBJ_9 equ                          0x4029
VAR_OBJ_10 equ                         0x402A
VAR_OBJ_11 equ                         0x402B
VAR_OBJ_12 equ                         0x402C
VAR_OBJ_13 equ                         0x402D
VAR_OBJ_14 equ                         0x402E
VAR_OBJ_15 equ                         0x402F

NUM_OBJ_GFX_VARS equ                   16

VAR_PLAYER_STARTER equ                 0x4030
VAR_UNK_4031 equ                       0x4031
VAR_UNK_4032 equ                       0x4032
VAR_BUENAS_PASSWORD_SET equ            0x4033
VAR_UNK_4034 equ                       0x4034
VAR_MAGIKARP_SIZE_RECORD equ           0x4035
VAR_UNK_4036 equ                       0x4036
VAR_UNK_4037 equ                       0x4037
VAR_UNK_4038 equ                       0x4038
VAR_UNK_4039 equ                       0x4039
VAR_UNK_403A equ                       0x403A
VAR_UNK_403B equ                       0x403B
VAR_LOTO_NUMBER_LO equ                 0x403C
VAR_LOTO_NUMBER_HI equ                 0x403D
VAR_UNOWN_REPORT_LEVEL equ             0x403E
VAR_FOLLOWER_TRAINER_NUM equ           0x403F
VAR_UNK_4040 equ                       0x4040
VAR_UNK_4041 equ                       0x4041
VAR_UNK_4042 equ                       0x4042
VAR_UNK_4043 equ                       0x4043
VAR_UNK_4044 equ                       0x4044
VAR_UNK_4045 equ                       0x4045
VAR_UNK_4046 equ                       0x4046
VAR_UNK_4047 equ                       0x4047
VAR_UNK_4048 equ                       0x4048
VAR_UNK_4049 equ                       0x4049
VAR_UNK_404A equ                       0x404A
VAR_UNK_404B equ                       0x404B
VAR_UNK_404C equ                       0x404C
VAR_BATTLE_TOWER_PRINT_PROGRESS equ    0x404D
VAR_BATTLE_FACTORY_PRINT_PROGRESS equ  0x404E
VAR_BATTLE_HALL_PRINT_PROGRESS equ     0x404F
VAR_BATTLE_CASTLE_PRINT_PROGRESS equ   0x4050
VAR_BATTLE_ARCADE_PRINT_PROGRESS equ   0x4051
VAR_UNK_4052 equ                       0x4052
VAR_UNK_4053 equ                       0x4053
VAR_UNK_4054 equ                       0x4054
VAR_UNK_4055 equ                       0x4055
VAR_UNK_4056 equ                       0x4056
VAR_UNK_4057 equ                       0x4057
VAR_BUG_CONTEST_HELD_PRIZE equ         0x4058
VAR_UNK_4059 equ                       0x4059
VAR_UNK_405A equ                       0x405A
VAR_UNK_405B equ                       0x405B
VAR_UNK_405C equ                       0x405C
VAR_UNK_405D equ                       0x405D
VAR_UNK_405E equ                       0x405E
VAR_UNK_405F equ                       0x405F
VAR_UNK_4060 equ                       0x4060
VAR_UNK_4061 equ                       0x4061
VAR_UNK_4062 equ                       0x4062
VAR_UNK_4063 equ                       0x4063
VAR_UNK_4064 equ                       0x4064
VAR_UNK_4065 equ                       0x4065
VAR_UNK_4066 equ                       0x4066
VAR_UNK_4067 equ                       0x4067
VAR_UNK_4068 equ                       0x4068
VAR_UNK_4069 equ                       0x4069
VAR_UNK_406A equ                       0x406A
VAR_UNK_406B equ                       0x406B
VAR_UNK_406C equ                       0x406C
VAR_UNK_406D equ                       0x406D
VAR_UNK_406E equ                       0x406E
VAR_UNK_406F equ                       0x406F
VAR_UNK_4070 equ                       0x4070
VAR_UNK_4071 equ                       0x4071
VAR_SCENE_NEW_BARK_TOWN_OW equ         0x4072
VAR_SCENE_CHERRYGROVE_CITY_OW equ      0x4073
VAR_SCENE_VIOLET_CITY_OW equ           0x4074
VAR_UNK_4075 equ                       0x4075
VAR_UNK_4076 equ                       0x4076
VAR_SCENE_ROCKET_TAKEOVER equ          0x4077
VAR_UNK_4078 equ                       0x4078
VAR_UNK_4079 equ                       0x4079
VAR_UNK_407A equ                       0x407A
VAR_UNK_407B equ                       0x407B
VAR_UNK_407C equ                       0x407C
VAR_UNK_407D equ                       0x407D
VAR_SCENE_NEW_BARK_WEST_EXIT equ       0x407E
VAR_UNK_407F equ                       0x407F
VAR_UNK_4080 equ                       0x4080
VAR_SCENE_NEW_BARK_EAST_EXIT equ       0x4081
VAR_UNK_4082 equ                       0x4082
VAR_UNK_4083 equ                       0x4083
VAR_UNK_4084 equ                       0x4084
VAR_UNK_4085 equ                       0x4085
VAR_UNK_4086 equ                       0x4086
VAR_SCENE_ROUTE_24_ROCKET equ          0x4087
VAR_UNK_4088 equ                       0x4088
VAR_SCENE_ROUTE_25 equ                 0x4089
VAR_UNK_408A equ                       0x408A
VAR_UNK_408B equ                       0x408B
VAR_SCENE_ROUTE_30_OW equ              0x408C
VAR_UNK_408D equ                       0x408D
VAR_UNK_408E equ                       0x408E
VAR_UNK_408F equ                       0x408F
VAR_UNK_4090 equ                       0x4090
VAR_UNK_4091 equ                       0x4091
VAR_UNK_4092 equ                       0x4092
VAR_UNK_4093 equ                       0x4093
VAR_NUM_MET_WEEKDAY_SIBLINGS equ       0x4094
VAR_SCENE_ROUTE_30_PHONE_CALL equ      0x4095
VAR_UNK_4096 equ                       0x4096
VAR_UNK_4097 equ                       0x4097
VAR_UNK_4098 equ                       0x4098
VAR_UNK_4099 equ                       0x4099
VAR_UNK_409A equ                       0x409A
VAR_UNK_409B equ                       0x409B
VAR_UNK_409C equ                       0x409C
VAR_UNK_409D equ                       0x409D
VAR_UNK_409E equ                       0x409E
VAR_UNK_409F equ                       0x409F
VAR_UNK_40A0 equ                       0x40A0
VAR_UNK_40A1 equ                       0x40A1
VAR_UNK_40A2 equ                       0x40A2
VAR_UNK_40A3 equ                       0x40A3
VAR_UNK_40A4 equ                       0x40A4
VAR_UNK_40A5 equ                       0x40A5
VAR_UNK_40A6 equ                       0x40A6
VAR_UNK_40A7 equ                       0x40A7
VAR_UNK_40A8 equ                       0x40A8
VAR_UNK_40A9 equ                       0x40A9
VAR_UNK_40AA equ                       0x40AA
VAR_UNK_40AB equ                       0x40AB
VAR_UNK_40AC equ                       0x40AC
VAR_UNK_40AD equ                       0x40AD
VAR_UNK_40AE equ                       0x40AE
VAR_UNK_40AF equ                       0x40AF
VAR_UNK_40B0 equ                       0x40B0
VAR_UNK_40B1 equ                       0x40B1
VAR_UNK_40B2 equ                       0x40B2
VAR_UNK_40B3 equ                       0x40B3
VAR_UNK_40B4 equ                       0x40B4
VAR_UNK_40B5 equ                       0x40B5
VAR_UNK_40B6 equ                       0x40B6
VAR_UNK_40B7 equ                       0x40B7
VAR_UNK_40B8 equ                       0x40B8
VAR_UNK_40B9 equ                       0x40B9
VAR_UNK_40BA equ                       0x40BA
VAR_UNK_40BB equ                       0x40BB
VAR_UNK_40BC equ                       0x40BC
VAR_UNK_40BD equ                       0x40BD
VAR_UNK_40BE equ                       0x40BE
VAR_UNK_40BF equ                       0x40BF
VAR_UNK_40C0 equ                       0x40C0
VAR_UNK_40C1 equ                       0x40C1
VAR_UNK_40C2 equ                       0x40C2
VAR_UNK_40C3 equ                       0x40C3
VAR_UNK_40C4 equ                       0x40C4
VAR_UNK_40C5 equ                       0x40C5
VAR_UNK_40C6 equ                       0x40C6
VAR_UNK_40C7 equ                       0x40C7
VAR_UNK_40C8 equ                       0x40C8
VAR_UNK_40C9 equ                       0x40C9
VAR_UNK_40CA equ                       0x40CA
VAR_UNK_40CB equ                       0x40CB
VAR_UNK_40CC equ                       0x40CC
VAR_UNK_40CD equ                       0x40CD
VAR_UNK_40CE equ                       0x40CE
VAR_UNK_40CF equ                       0x40CF
VAR_UNK_40D0 equ                       0x40D0
VAR_UNK_40D1 equ                       0x40D1
VAR_UNK_40D2 equ                       0x40D2
VAR_UNK_40D3 equ                       0x40D3
VAR_UNK_40D4 equ                       0x40D4
VAR_UNK_40D5 equ                       0x40D5
VAR_UNK_40D6 equ                       0x40D6
VAR_UNK_40D7 equ                       0x40D7
VAR_UNK_40D8 equ                       0x40D8
VAR_UNK_40D9 equ                       0x40D9
VAR_UNK_40DA equ                       0x40DA
VAR_UNK_40DB equ                       0x40DB
VAR_UNK_40DC equ                       0x40DC
VAR_UNK_40DD equ                       0x40DD
VAR_UNK_40DE equ                       0x40DE
VAR_UNK_40DF equ                       0x40DF
VAR_UNK_40E0 equ                       0x40E0
VAR_BOAT_DIRECTION equ                 0x40E1
VAR_UNK_40E2 equ                       0x40E2
VAR_SCENE_SAFARI_ZONE_ENTRANCE equ     0x40E3
VAR_UNK_40E4 equ                       0x40E4
VAR_UNK_40E5 equ                       0x40E5
VAR_UNK_40E6 equ                       0x40E6
VAR_UNK_40E7 equ                       0x40E7
VAR_UNK_40E8 equ                       0x40E8
VAR_UNK_40E9 equ                       0x40E9
VAR_UNK_40EA equ                       0x40EA
VAR_UNK_40EB equ                       0x40EB
VAR_UNK_40EC equ                       0x40EC
VAR_UNK_40ED equ                       0x40ED
VAR_UNK_40EE equ                       0x40EE
VAR_UNK_40EF equ                       0x40EF
VAR_UNK_40F0 equ                       0x40F0
VAR_UNK_40F1 equ                       0x40F1
VAR_UNK_40F2 equ                       0x40F2
VAR_UNK_40F3 equ                       0x40F3
VAR_UNK_40F4 equ                       0x40F4
VAR_UNK_40F5 equ                       0x40F5
VAR_UNK_40F6 equ                       0x40F6
VAR_UNK_40F7 equ                       0x40F7
VAR_UNK_40F8 equ                       0x40F8
VAR_UNK_40F9 equ                       0x40F9
VAR_UNK_40FA equ                       0x40FA
VAR_SCENE_SINJOH_MYSTRI_ROOM equ       0x40FB
VAR_UNK_40FC equ                       0x40FC
VAR_UNK_40FD equ                       0x40FD
VAR_UNK_40FE equ                       0x40FE
VAR_UNK_40FF equ                       0x40FF
VAR_UNK_4100 equ                       0x4100
VAR_UNK_4101 equ                       0x4101
VAR_UNK_4102 equ                       0x4102
VAR_UNK_4103 equ                       0x4103
VAR_UNK_4104 equ                       0x4104
VAR_UNK_4105 equ                       0x4105
VAR_SCENE_PLAYERS_HOUSE_1F equ         0x4106
VAR_SCENE_MR_POKEMONS_HOUSE equ        0x4107
VAR_SCENE_ELMS_LAB equ                 0x4108
VAR_UNK_4109 equ                       0x4109
VAR_UNK_410A equ                       0x410A
VAR_UNK_410B equ                       0x410B
VAR_UNK_410C equ                       0x410C
VAR_UNK_410D equ                       0x410D
VAR_UNK_410E equ                       0x410E
VAR_UNK_410F equ                       0x410F
VAR_UNK_4110 equ                       0x4110
VAR_UNK_4111 equ                       0x4111
VAR_UNK_4112 equ                       0x4112
VAR_ELEVATOR_LAST_FLOOR equ            0x4113
VAR_UNK_4114 equ                       0x4114
VAR_NUM_TIMES_GIVEN_BLUE_CARD equ      0x4115
VAR_UNK_4116 equ                       0x4116
VAR_SCENE_POKECENTER_WIFI_BASEMENT equ 0x4117
VAR_UNK_4118 equ                       0x4118
VAR_UNK_4119 equ                       0x4119
VAR_UNK_411A equ                       0x411A
VAR_SCENE_ROUTE_10_POWER_PLANT equ     0x411B
VAR_UNK_411C equ                       0x411C
VAR_UNK_411D equ                       0x411D
VAR_UNK_411E equ                       0x411E
VAR_UNK_411F equ                       0x411F
VAR_UNK_4120 equ                       0x4120
VAR_UNK_4121 equ                       0x4121
VAR_UNK_4122 equ                       0x4122
VAR_PAL_PARK_HIGH_SCORE equ            0x4123
VAR_UNK_4124 equ                       0x4124
VAR_UNK_4125 equ                       0x4125
VAR_UNK_4126 equ                       0x4126
VAR_UNK_4127 equ                       0x4127
VAR_UNK_4128 equ                       0x4128
VAR_UNK_4129 equ                       0x4129
VAR_UNK_412A equ                       0x412A
VAR_UNK_412B equ                       0x412B
VAR_UNK_412C equ                       0x412C
VAR_UNK_412D equ                       0x412D
VAR_UNK_412E equ                       0x412E
VAR_UNK_412F equ                       0x412F
VAR_UNK_4130 equ                       0x4130
VAR_UNK_4131 equ                       0x4131
VAR_UNK_4132 equ                       0x4132
VAR_UNK_4133 equ                       0x4133
VAR_UNK_4134 equ                       0x4134
VAR_UNK_4135 equ                       0x4135
VAR_UNK_4136 equ                       0x4136
VAR_UNK_4137 equ                       0x4137
VAR_MYSTERY_GIFT_CHECK equ             0x4138
VAR_UNK_4139 equ                       0x4139
VAR_BLUE_CARD_POINTS equ               0x413A
VAR_UNK_413B equ                       0x413B
VAR_UNK_413C equ                       0x413C
VAR_UNK_413D equ                       0x413D
VAR_UNK_413E equ                       0x413E
VAR_UNK_413F equ                       0x413F
VAR_UNK_4140 equ                       0x4140
VAR_UNK_4141 equ                       0x4141
VAR_UNK_4142 equ                       0x4142
VAR_UNK_4143 equ                       0x4143
VAR_UNK_4144 equ                       0x4144
VAR_UNK_4145 equ                       0x4145
VAR_UNK_4146 equ                       0x4146
VAR_UNK_4147 equ                       0x4147
VAR_UNK_4148 equ                       0x4148
VAR_UNK_4149 equ                       0x4149
VAR_UNK_414A equ                       0x414A
VAR_UNK_414B equ                       0x414B
VAR_UNK_414C equ                       0x414C
VAR_UNK_414D equ                       0x414D
VAR_UNK_414E equ                       0x414E
VAR_UNK_414F equ                       0x414F
VAR_UNK_4150 equ                       0x4150
VAR_UNK_4151 equ                       0x4151
VAR_UNK_4152 equ                       0x4152
VAR_UNK_4153 equ                       0x4153
VAR_UNK_4154 equ                       0x4154
VAR_UNK_4155 equ                       0x4155
VAR_UNK_4156 equ                       0x4156
VAR_UNK_4157 equ                       0x4157
VAR_UNK_4158 equ                       0x4158
VAR_UNK_4159 equ                       0x4159
VAR_UNK_415A equ                       0x415A
VAR_UNK_415B equ                       0x415B
VAR_UNK_415C equ                       0x415C
VAR_UNK_415D equ                       0x415D
VAR_UNK_415E equ                       0x415E
VAR_UNK_415F equ                       0x415F
VAR_UNK_4160 equ                       0x4160
VAR_UNK_4161 equ                       0x4161
VAR_UNK_4162 equ                       0x4162
VAR_UNK_4163 equ                       0x4163
VAR_UNK_4164 equ                       0x4164
VAR_UNK_4165 equ                       0x4165
VAR_UNK_4166 equ                       0x4166
VAR_UNK_4167 equ                       0x4167
VAR_UNK_4168 equ                       0x4168
VAR_UNK_4169 equ                       0x4169
VAR_UNK_416A equ                       0x416A
VAR_UNK_416B equ                       0x416B
VAR_UNK_416C equ                       0x416C
VAR_UNK_416D equ                       0x416D
VAR_UNK_416E equ                       0x416E
VAR_UNK_416F equ                       0x416F

NUM_VARS equ                           (0x170)

SPECIAL_VAR_BASE equ                   0x8000
NUM_SPECIAL_VARS equ                   14

VAR_SPECIAL_x8000 equ                  0x8000
VAR_SPECIAL_x8001 equ                  0x8001
VAR_SPECIAL_x8002 equ                  0x8002
VAR_SPECIAL_x8003 equ                  0x8003
VAR_SPECIAL_x8004 equ                  0x8004
VAR_SPECIAL_x8005 equ                  0x8005
VAR_SPECIAL_x8006 equ                  0x8006
VAR_SPECIAL_x8007 equ                  0x8007
VAR_SPECIAL_x8008 equ                  0x8008
VAR_SPECIAL_x8009 equ                  0x8009
VAR_SPECIAL_x800A equ                  0x800A
VAR_SPECIAL_x800B equ                  0x800B
VAR_SPECIAL_RESULT equ                 0x800C
VAR_SPECIAL_LAST_TALKED equ            0x800D

VARS_START equ         VAR_BASE
VARS_END equ           (VAR_BASE + NUM_VARS - 1)
SPECIAL_VARS_START equ SPECIAL_VAR_BASE
SPECIAL_VARS_END equ   (SPECIAL_VAR_BASE + NUM_SPECIAL_VARS - 1)
